From 69644993f608d1822f3a27554741ab3fc1bc9685 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Mon, 7 May 2018 16:45:32 +0200 Subject: [PATCH] gsk: Improve GSK_RENDERER behavior 1. Include the broadway renderer (so we can test it properly fails on Wayland or X11) 2. List all potential renderers, print useful information when Vulkan is not compiled in instea dof omitting it 3. Improve docs --- docs/reference/gtk/running.sgml | 23 +++++++++++++++++------ gsk/gskrenderer.c | 11 +++++++++++ 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/docs/reference/gtk/running.sgml b/docs/reference/gtk/running.sgml index a001ffec28..90ec4178f6 100644 --- a/docs/reference/gtk/running.sgml +++ b/docs/reference/gtk/running.sgml @@ -465,22 +465,33 @@ nevertheless. If set, selects the GSK renderer to use. The following renderers can - be selected, provided they are included in the GSK libraries you are using: + be selected, provided they are included in the GTK library you are using + and the GDK backend supports them: - vulkan - Selects the Vulkan renderer + help + Prints information about available options - gl - Selects the Vulkan renderer + broadway + Selects the Broadway-backend specific renderer cairo - Selects the cairo renderer + Selects the fallback Cairo renderer + + + + gl + Selects the default OpenGL renderer + + + + vulkan + Selects the Vulkan renderer diff --git a/gsk/gskrenderer.c b/gsk/gskrenderer.c index 9c10209b53..11b8cd2074 100644 --- a/gsk/gskrenderer.c +++ b/gsk/gskrenderer.c @@ -545,6 +545,10 @@ get_renderer_for_name (const char *renderer_name) { if (renderer_name == NULL) return G_TYPE_INVALID; +#ifdef GDK_WINDOWING_BROADWAY + else if (g_ascii_strcasecmp (renderer_name, "broadway") == 0) + return GSK_TYPE_BROADWAY_RENDERER; +#endif else if (g_ascii_strcasecmp (renderer_name, "cairo") == 0) return GSK_TYPE_CAIRO_RENDERER; else if (g_ascii_strcasecmp (renderer_name, "opengl") == 0 @@ -557,10 +561,17 @@ get_renderer_for_name (const char *renderer_name) else if (g_ascii_strcasecmp (renderer_name, "help") == 0) { g_print ("Supported arguments for GSK_RENDERER environment variable:\n"); +#ifdef GDK_WINDOWING_BROADWAY + g_print ("broadway - Use the Broadway specific renderer\n"); +#else + g_print ("broadway - disabled during GTK build\n"); +#endif g_print (" cairo - Use the Cairo fallback renderer\n"); g_print (" opengl - Use the default OpenGL renderer\n"); #ifdef GDK_RENDERING_VULKAN g_print (" vulkan - Use the Vulkan renderer\n"); +#else + g_print (" vulkan - Disabled during GTK build\n"); #endif g_print (" help - Print this help\n\n"); g_print ("Other arguments will cause a warning and be ignored.\n"); -- 2.30.2